import colorama as c

def ok(errProgram = "", errRes = ""):
    if (errProgram == '' or errRes == ''):
        raise ValueError("'errProgram' or 'errRes' argument must not be none")
    print(f"[{c.Fore.GREEN}{c.Style.BRIGHT} OK {c.Style.NORMAL}{c.Fore.RESET}]" +  # Header [ERROR]
    f" {c.Style.BRIGHT}{c.Back.GREEN}{errProgram}{c.Fore.RESET}{c.Back.RESET}{c.Style.NORMAL}" + # WHAT PROGRAM ERR
    f"{c.Back.RESET}: {c.Fore.GREEN}{errRes}{c.Fore.RESET}") # WHAT HAPPEND

def info(errProgram = "", errRes = ""):
    if (errProgram == '' or errRes == ''):
        raise ValueError("'errProgram' or 'errRes' argument must not be none")
    print(f"[{c.Fore.BLUE}{c.Style.BRIGHT}INFO{c.Style.NORMAL}{c.Fore.RESET}]" +  # Header [ERROR]
    f" {c.Style.BRIGHT}{c.Back.CYAN}{c.Fore.RESET}{errProgram}{c.Back.RESET}{c.Back.RESET}{c.Style.NORMAL}" + # WHAT PROGRAM ERR
    f"{c.Back.RESET}: {c.Fore.GREEN}{errRes}{c.Fore.RESET}") # WHAT HAPPEND

def time(errProgram = "", errRes = ""):
    if (errProgram == '' or errRes == ''):
        raise ValueError("'errProgram' or 'errRes' argument must not be none")
    print(f"[{c.Fore.CYAN}{c.Style.BRIGHT}TIME{c.Style.NORMAL}{c.Fore.RESET}]" +  # Header [ERROR]
    f" {c.Style.BRIGHT}{c.Back.BLUE}{c.Fore.RESET}{errProgram}{c.Back.RESET}{c.Style.NORMAL}" + # WHAT PROGRAM ERR
    f"{c.Back.RESET}: {c.Fore.GREEN}{errRes}{c.Fore.YELLOW} This may take some time...{c.Fore.RESET}") # WHAT HAPPEND


def ins(inputTips = ""):
    if (inputTips == ''):
        raise ValueError("'errProgram' or 'inputTips' argument must not be none")
    print(f"[{c.Fore.MAGENTA}{c.Style.BRIGHT}INPUT{c.Style.NORMAL}{c.Fore.RESET}]" +  # Header [ERROR]
    f" {c.Style.BRIGHT}{c.Back.MAGENTA}{c.Fore.RESET}{c.Fore.RESET}{c.Back.RESET}{c.Style.NORMAL}" + # WHAT PROGRAM ERR
    f"{c.Back.RESET}{c.Fore.RESET}{inputTips}{c.Fore.YELLOW}{c.Fore.GREEN}", end = '') # WHAT HAPPEND
    a = input()
    print(f"{c.Fore.RESET}", end = '')
    return a

